import Toast from "./Toast.vue";

const obj = {};

// use之后反过来执行install函数，会传过来一个Vue参数
obj.install = function(Vue) {
  // 1.创建组件构造器
  const toastConstructor = Vue.extend(Toast);

  // 2.根据组件构造器创建一个组件实例对象
  const toast = new toastConstructor();

  // 3.将组件对象挂载在某一个DOM元素上
  toast.$mount(document.createElement("div"));

  // 4.将其DOM元素挂载在body上，其DOM元素div对应的就是toast.$el
  document.body.appendChild(toast.$el);

  // 将自定义指令$toast挂载在原型链上
  Vue.prototype.$toast = toast;
};

export default obj;
